package com.sg.dto.biz.app.common;

import com.sg.common.dto.BaseDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Objects;


/**
 * @desc FrameworkSceneRoleDto
 * @使用场景
 */
@Data
public class FrameworkSceneRoleDto extends BaseDto implements Serializable {

    /**
     * 角色ID
     */
    @NotNull(message = "角色ID不能为空")
    @ApiModelProperty("角色ID")
    private String roleId;

    /**
     * 角色标识
     */
    @NotNull(message = "角色标识不能为空")
    @ApiModelProperty("角色标识")
    private String roleCode;

    /**
     * 角色名称
     */
    @NotNull(message = "角色名称不能为空")
    @ApiModelProperty("角色名称")
    private String roleName;
    /**
     * 排序数字
     */
    @ApiModelProperty("排序数字")
    private Long number;

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        if (!super.equals(o)) return false;
        FrameworkSceneRoleDto that = (FrameworkSceneRoleDto) o;
        return roleId == that.roleId && roleCode == that.roleCode && roleName == that.roleName && number == that.number;
    }

    @Override
    public int hashCode() {
        return Objects.hash(super.hashCode(), roleId, roleCode, roleName, number);
    }


}
   